package demo.miner;

import java.util.ArrayList;
import java.util.List;

public class GameLevel {

    private String name;
    private String briefing;
    private int startX;
    private int startY;
    private String mapImage;

    private int mapGridWidth;
    private int mapGridHeight;
    private int[][] mapObstructedTerrain;

    protected List<Entity<?>> items;

    public GameLevel() {

    }

    public GameLevel(String name, int startX, int startY) {
        super();
        this.name = name;
        this.startX = startX;
        this.startY = startY;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getBriefing() {
        return briefing;
    }

    public void setBriefing(String briefing) {
        this.briefing = briefing;
    }

    public int getStartX() {
        return startX;
    }

    public void setStartX(int startX) {
        this.startX = startX;
    }

    public int getStartY() {
        return startY;
    }

    public void setStartY(int startY) {
        this.startY = startY;
    }

    public String getMapImage() {
        return mapImage;
    }

    public void setMapImage(String mapImage) {
        this.mapImage = mapImage;
    }

    public List<Entity<?>> getItems() {
        if (items == null) {
            items = new ArrayList<Entity<?>>();
        }
        return items;
    }

    public void setItems(List<Entity<?>> items) {
        this.items = items;
    }

    public int getMapGridWidth() {
        return mapGridWidth;
    }

    public void setMapGridWidth(int mapGridWidth) {
        this.mapGridWidth = mapGridWidth;
    }

    public int getMapGridHeight() {
        return mapGridHeight;
    }

    public void setMapGridHeight(int mapGridHeight) {
        this.mapGridHeight = mapGridHeight;
    }

    public int[][] getMapObstructedTerrain() {
        return mapObstructedTerrain;
    }

    public void setMapObstructedTerrain(int[][] mapObstructedTerrain) {
        this.mapObstructedTerrain = mapObstructedTerrain;
    }
    
}
